<?php

namespace common\models\patient;

use Yii;

/**
 * This is the model class for table "patient".
 *
 * @property int $id
 * @property int $user_id 所属用户ID
 * @property int $spoker_id 代言人ID
 * @property string $private_id 病历号
 * @property string $name 姓名
 * @property string $mobile 手机号
 * @property int $type_id 类型ID【patient_type.id】
 * @property int $discount_rate 折扣【单位：%】
 * @property int $last_order_id 最后预约记录ID【patient_order.id】
 * @property string $remark 备注
 * @property int $eky_repeat E看牙重复状态【1重复、0不重复】
 * @property int $eky_confirm E看牙关联状态【1已关联、0未关联】
 * @property int $data_status 数据状态【1登记、2预约、3到院】
 * @property int $status 状态【-1删除、0禁用、1正常】
 * @property int $is_sync 是否已同步
 * @property int $created_at 创建时间
 * @property int $updated_at 更新时间
 */
class Patient extends \common\models\base\BaseModel
{
    const EKY_REPEAT_NO = 0;
    const EKY_REPEAT_YES = 1;

    const EKY_CONFIRM_NO = 0;
    const EKY_CONFIRM_YES = 1;

    const DATA_STATUS_ADD = 1;
    const DATA_STATUS_ORDER = 2;
    const DATA_STATUS_IN_HOSPITAL = 3;

    public static $dataStatuss = [
        self::DATA_STATUS_ADD => '登记',
        self::DATA_STATUS_ORDER => '预约',
        self::DATA_STATUS_IN_HOSPITAL => '到院',
    ];

    const STATUS_DELETE = -1;// 删除
    const STATUS_INVALID = 0;// 失效
    const STATUS_ENABLE = 1;// 正常

    public static $statuss = [
        self::STATUS_DELETE => '删除',
        self::STATUS_INVALID => '禁用',
        self::STATUS_ENABLE => '正常',
    ];

    /**
     * {@inheritdoc}
     */
    public static function tableName()
    {
        return 'patient';
    }

    /**
     * {@inheritdoc}
     */
    public function rules()
    {
        return [
            [['user_id', 'spoker_id', 'type_id', 'discount_rate', 'last_order_id', 'eky_repeat', 'eky_confirm', 'data_status', 'status', 'is_sync', 'created_at', 'updated_at'], 'integer'],
            [['private_id', 'name'], 'string', 'max' => 32],
            [['mobile'], 'string', 'max' => 16],
            [['remark'], 'string', 'max' => 512],
        ];
    }

    /**
     * {@inheritdoc}
     */
    public function attributeLabels()
    {
        return [
            'id' => 'ID',
            'user_id' => '所属用户ID',
            'spoker_id' => '代言人ID',
            'private_id' => '病历号',
            'name' => '姓名',
            'mobile' => '手机号',
            'type_id' => '类型ID【patient_type.id】',
            'discount_rate' => '折扣【单位：%】',
            'last_order_id' => '最后预约记录ID【patient_order.id】',
            'remark' => '备注',
            'eky_repeat' => 'E看牙重复状态【1重复、0不重复】',
            'eky_confirm' => 'E看牙关联状态【1已关联、0未关联】',
            'data_status' => '数据状态【1登记、2预约、3到院】',
            'status' => '状态【-1删除、0禁用、1正常】',
            'is_sync' => '是否已同步',
            'created_at' => '创建时间',
            'updated_at' => '更新时间',
        ];
    }
}
